import * as React from "react" import { type SearchParams } from "@/types/table" import { getValidFilters } from "@/lib/data-table" import { Skeleton } from "@/components/ui/skeleton" import { DataTableSkeleton } from "@/components/data-table/data-table-skeleton" import { Shell } from "@/components/shell" import { getServerSession } from "next-auth" import { authOptions } from "@/app/api/auth/[...nextauth]/route" import Link from "next/link" import { Button } from "@/components/ui/button" import { LogIn } from "lucide-react" import { getSHIEvaluationSubmissions } from "@/lib/evaluation-submit/service" import { getSHIEvaluationsSubmitSchema } from "@/lib/evaluation-submit/validation" import { SHIEvaluationSubmissionsTable } from "@/lib/evaluation-submit/table/submit-table" import { useTranslation } from "@/i18n" interface IndexPageProps { params: Promise<{lng: string}> searchParams: Promise } export default async function IndexPage(props: IndexPageProps) { const searchParams = await props.searchParams const search = getSHIEvaluationsSubmitSchema.parse(searchParams) const validFilters = getValidFilters(search.filters) const {lng} = await props.params const {t} = await useTranslation(lng, 'menu') // Get session const session = await getServerSession(authOptions) // Check if user is logged in if (!session || !session.user) { // Return login required UI instead of redirecting return (

{t('menu.vendor_management.evaluation_input')}

{/*

요청된 정기평가를 입력하고 제출할 수 있습니다.

*/}

로그인이 필요합니다

정기평가를 확인하려면 먼저 로그인하세요.

) } const userId = session.user.id // Validate vendorId (should be a number) const idAsNumber = Number(userId) if (isNaN(idAsNumber)) { // Handle invalid vendor ID (this shouldn't happen if authentication is working properly) return (

{t('menu.vendor_management.evaluation_input')}

계정 오류

관리자에게 문의하세요.

) } // If we got here, we have a valid vendor ID const promises = Promise.all([ getSHIEvaluationSubmissions({ ...search, filters: validFilters, }, idAsNumber) ]) return (

{t('menu.vendor_management.evaluation_input')}

{/*

요청된 정기평가를 입력하고 제출할 수 있습니다.

*/}
}> {/* DateRangePicker can go here */} } >
) }